The present invention relates to a relay apparatus, system and method and storage medium, and more particularly, to a relay apparatus, system and method and storage medium for information services by a server on a network to a client.
With high-speed and wide area Internet and Intranet environment, network application programs (application programs which run on a computer network as a platform), which conventionally handled only text data, handle multimedia data such as video and audio data having more complicated structure and requiring a larger capacity.
In this progress, the assignee of the present invention has proposed a network application program for providing a user with a video image obtained by a video recorder or video camera as a still image or moving image from a server program located at a remote place via a network.
Hereinafter, the above network application program will be referred to as a “video delivery system”.
On the other hand, as World Wide Web browsers (hereinafter simply referred to as “Web browsers” or “browsers”) such as Netscape Navigator (by Netscape Communications Corporation) and Internet Explorer (by Microsoft Corporation) became popular, the computer network, that has been utilized as conventional communication means only for E-mail, news service and FTP (File Transfer Protocol) and the like, is developing as the field of more various activities such as collection of information and cooperative shopping.
Accordingly, the Web browsers have been improved so as to provide not only multimedia information display but also a general user interface for various purposes. The introduction of HTML (Hypertext Markup Language), HTTP (Hypertext Transfer Protocol), JavaScript, Java and the like and rapid improvement of their functions show this tendency.
The above-described development of the Web browsers has produced a need to utilize a video delivery system in the Web system by a Web browser.
However, the video delivery system proposed by the present assignee merely uses a special-purpose client application program (referred to as a “video display client”). The special-purpose video display client is started from a Web browser. Accordingly, it is not integrated with the Web browser.
Further, it is possible to seemingly incorporate the above video display client in the Web browser by using a technique such as Plug-in module. However, the video display client is still an independent program in the Web browser, therefore, the high freedom of design owned by the Web browser cannot be utilized. From a home page designer's standpoint, even look & feel and user interface of the video client should be changed in accordance with his/her preference or purpose. However, this need is not satisfied.
From the above-described situation, there is a need for a video display client integrated with a Web browser, which can be used by a Web-browser extensible language such as Java (by Sun Microsystems, Inc.) or JavaScript, or generated by using such language.
However, to satisfy this requirement, it is necessary to solve the following problems:    1. Absorption of difference between communication methods    2. Prevention of reduction in execution efficiency    3. Absorption of difference in video delivery format
Hereinbelow, these problems will be described.
<1. Absorption of Difference Between Communication Methods>
The basic operation of a Web browser is to transfer a file acquisition request message to a Web server, and to display data received as a reply to the request, on the premise that the data is sent in 1:1 correspondence with the request from the Web browser (client). Further, the Web browser must establish a communication path (hereinafter referred to as a “connection”) for each request to the Web server.
In the video delivery system, a server and a client first establish a connection therebetween, and then video information is transmitted in a one-way manner from the server. To remove this difference between these two communication methods as above, means for mediating from one communication method to the other communication method is required.
<2. Prevention of Reduction in Execution Efficiency>
If the video display client (Web-version video client) is integrated with a Web browser, the execution efficiency of the video display function and other functions will be reduced in comparison with the special-purpose video display client.
In use of the special-purpose video client, it is possible to specify the client in correspondence with the target data structure and a video delivery protocol and to optimize the operation of the client for the purpose. On the other hand, in use of the Web-version client, general data processing and data display functions provided by the Web browser must be used. Nevertheless, the Web-version client will be utilized by more users than those of the special-purpose client, since the users can use the Web-version client without labor of download and installation and therefore the Web-version client can be easily used in comparison with the special-purpose client. However, the Web-version client with low performance might lose the reputation of the video delivery system. For this reason, means for preventing the reduction in execution efficiency must be introduced.
<3. Absorption of Difference in Video Delivery Format>
Preferably, the above requirements 1 and 2 should be satisfied as requirements to the Web-version video client, and further, the Web-version video client should be independent of specific video delivery system and video delivery method. In the Web-version video client using Java or JavaScript, as a viewer (a video display portion) is realized as a common user interface on the Web browser, video information should be displayed regardless of the difference in type of server (video server) which delivers the video image, as normal image data can be displayed regardless of its data format such as GIF and JPEG. To meet this requirement, it is necessary to provide means for absorbing the difference in video delivery format.